// This file is part of Sanmill.
// Copyright (C) 2019-2023 The Sanmill developers (see AUTHORS file)
//
// Sanmill is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Sanmill is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

part of '../settings.dart';

class SettingsCard extends StatelessWidget {
  const SettingsCard({
    super.key,
    required this.children,
    required this.title,
  });

  final Widget title;
  final List<Widget> children;

  @override
  Widget build(BuildContext context) {
    final ThemeData theme = Theme.of(context);
    final TextStyle textStyle = theme.textTheme.titleLarge!.apply(
      color: AppTheme.settingsHeaderTextColor,
    );

    return Column(
      crossAxisAlignment: CrossAxisAlignment.start,
      children: <Widget>[
        DefaultTextStyle(
          style: textStyle,
          textAlign: TextAlign.start,
          child: title,
        ),
        Card(
          child: Padding(
            // ignore: use_named_constants
            padding: const EdgeInsets.all(0),
            child: Column(
              children: <Widget>[
                for (int i = 0; i < children.length; i++)
                  i == children.length - 1
                      ? children[i]
                      : Column(
                          children: <Widget>[children[i], const Divider()],
                        ),
              ],
            ),
          ),
        ),
      ],
    );
  }
}
